Linux数据库

推荐列表 站点导航

当前位置:首页 > 服务器技术 > Linux数据库 >

用python取得mysql随机一条记录的取巧办法

来源:网络整理  作者:  发布时间:2020-12-22 22:07
网上有很多关于如何从数据库取得随机一条记录的办法,包括: SELECT RAND() * MAX(id) FROM random; 还有据说是效率最低的办...

网上有很多关于如何从数据库取得随机一条记录的办法,包括:

SELECT RAND() * MAX(id) FROM random;

 

还有据说是效率最低的办法:

SELECT * FROM foo ORDER BY RAND() LIMIT 1 

 

至于其他的方法,可以参照其他的文章。这个就不贴地址了。

我说我的一个偷懒的办法。那就是利用 Python的 random 库。

 

random 里面有这样的一个方法:

random.choice(seq)

Return a random element from the non-empty sequence seq. If seq is empty, raises IndexError.

 

注意这里的seq,是个序列,那么我们取得的结果集是不是就是一个序列啊?

 

既然是那就别犹豫了,直接 choice 就行了啊。

strSQL='select * from dc_pool '

cursor.execute(strSQL)

results=cursor.fetchall()

res=random.choice(results)

 

貌似效率也还行。

相关热词:

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/server/sql/7503.shtml

相关文章
Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

用python取得mysql随机一条记录的取巧办法

2020-12-22 编辑:

网上有很多关于如何从数据库取得随机一条记录的办法,包括:

SELECT RAND() * MAX(id) FROM random;

 

还有据说是效率最低的办法:

SELECT * FROM foo ORDER BY RAND() LIMIT 1 

 

至于其他的方法,可以参照其他的文章。这个就不贴地址了。

我说我的一个偷懒的办法。那就是利用 Python的 random 库。

 

random 里面有这样的一个方法:

random.choice(seq)

Return a random element from the non-empty sequence seq. If seq is empty, raises IndexError.

 

注意这里的seq,是个序列,那么我们取得的结果集是不是就是一个序列啊?

 

既然是那就别犹豫了,直接 choice 就行了啊。

strSQL='select * from dc_pool '

cursor.execute(strSQL)

results=cursor.fetchall()

res=random.choice(results)

 

貌似效率也还行。

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/server/sql/7503.shtml

相关文章

风云图片

推荐阅读

返回Linux数据库频道首页